package java2;

import java.util.Scanner;

class ArrayUtils{
	public static double findMax(double[] arr,int begin, int end)throws IllegalArgumentException{
		
		if(begin>=end){
			throw new IllegalArgumentException("begin:"+begin+" >= "+"end:"+end);
		}
		else if(begin<0){
			throw new IllegalArgumentException("begin:"+begin+" < 0");
		}
		else if(end>arr.length){
			throw new IllegalArgumentException("end:"+end+" > arr.length");
		}
		else{
			double max=arr[begin];
		for(int i=begin;i<end;i++){
			if(arr[i]>max)
				max=arr[i];
		}
		return max;
		}
	}
}
public class java9_5_3{

	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
       Scanner sc=new Scanner(System.in);
       int n=sc.nextInt();
       double[] arr =new double[n];
       for(int i=0;i<arr.length;i++){
    	   arr[i]=sc.nextDouble();
       }
       
       while(sc.hasNextInt()){
    	   int begin = sc.nextInt();
    	   int end=sc.nextInt();
    	   double max=0;
    	   try{
    		   max=ArrayUtils.findMax(arr, begin, end);
    		   System.out.println(max);
    	   }catch(IllegalArgumentException e){
    		   System.out.println(e);
    	   }
       }
       try {
    	     System.out.println(ArrayUtils.class.getDeclaredMethod("findMax", double[].class,int.class,int.class));
    	} catch (Exception e1) {
    		
    	}
	}
	

}
